package com.pm.project.domain;

import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.pm.common.core.domain.model.POJOEntity;
import com.pm.project.domain.vo.ProjectListMemberVO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * 项目表
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class ProjectList extends POJOEntity implements Serializable {


    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    //状态
    private Integer status;

    //客户
    private String custom;

    //机型
    private String model;

    //项目编号
    private String projectNo;

    //项目级别
    private String level;

    //项目备注
    private String remark;

    //项目经理
    private Long projectManager;

    //项目名称
    private String projectName;

    //MRD oa单号
    private String mrdOaNo;

    //PRD oa单号
    private String prdOaNo;


    //产品名称
    private String productName;

    //MRD oa ID
    private String mrdOaId;

    //PRD oa ID
    private String prdOaId;

    //是否超期 0 未超期 1超期
    private Integer overdue;

    /**
     * 产品类型
     */
    private String productType;
    /**
     * 产品线
     */
    private String productLine;

    /**
     * OC型号
     */
    private String ocModel;

    /**
     * 项目进度 百分百  eg: 10%   保存是  10
     */
    private BigDecimal progress;


    @TableField(exist = false)
    private List<ProjectListMemberVO> projectListMemberList;

    @TableField(exist = false)
    private List<JSONObject> projectListModifyTimeList;

    //删除标识
    private String delFlag;

    //查询参数 0 待处理  1已处理
    @TableField(exist = false)
    private Integer flag;


    //查询参数  是否查询自己项目
    @TableField(exist = false)
    private String myProjectFlag;

    //查询参数  是否查询自己项目
    @TableField(exist = false)
    private Boolean modifyFlag;



}
